/*
 * @lc app=leetcode.cn id=213 lang=javascript
 *
 * [213] 打家劫舍 II
 */

// @lc code=start
/**
 * @param {number[]} nums
 * @return {number}
 */
var rob = function (nums) {
  var _rob = function (arr) {
    const dp = [];
    dp[0] = arr[0];
    dp[1] = Math.max(arr[1], arr[0]);
    for (let i = 2; i < arr.length; i++) {
      dp[i] = Math.max(dp[i - 1], dp[i - 2] + arr[i]);
    }
    return dp[arr.length - 1];
  };
  return Math.max(
    _rob(nums.slice(2, nums.length - 2)),
    _rob(nums.slice(1, nums.length - 1))
  );
};
rob([2, 3, 2]);
// @lc code=end
